home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1997 February / EnigmA AMIGA RUN 15 (1997)(G.R. Edizioni)(IT)[!][issue 1997-02][PLANET CD V].iso / progs / editor / frexxed / fpl / proasmmode.fpl.readme < prev    next >
Text File  |  1996-08-01  |  6KB  |  185 lines

  1. #############################################################################
  2. File:        ProAsmMode.FPL
  3. Author:        Jesper Skov
  4. Email:        jskov@iesd.auc.dk / http://www.iesd.auc.dk/~jskov
  5. Short:        FrexxEd interface to ProAsm
  6. Version:    1.2
  7. Date:        01.08.96
  8. Local settings:
  9. Global settings:
  10. Keysequence:
  11. Type:        Interface
  12. Prereq:        ProAsm and possibly a debugger
  13. Copyright:    © 1996, Jesper Skov
  14. #############################################################################
  15.  
  16. FUNCTION
  17.   Since I started using CLI assemblers, I have always missed the ASM1
  18.   commandline to do some quick calculations on variable values. Thus when
  19.   reading the ProAsm documentation I realized that I could make a
  20.   FrexxEd interface for ProAsm with the same feel as ASM1.
  21.  
  22.   Now that I have been using the interface for some weeks, I must say
  23.   that it works even better than I had hoped. Now I only wish for some
  24.   more speed (ASX hangs on my machine, so I have to run CLI-only assembly
  25.   sessions - very annoying) and a smarter debugger interface. The latter I
  26.   hoped I could realize with Ralph Schmidt's BDebug, but the ARexx
  27.   interface seems to be broken. Also, Daniel Weber have arranged for a
  28.   beta version of the SIM debugger, which I hope will be the answer, but I
  29.   haven't received it yet.... Time will tell.
  30.  
  31.   This interface is based (losely) on the same editing concept as found in
  32.   ASM1; An "info buffer" where all use of assembler and debugger is
  33.   controlled. This buffer also has a few other features which are
  34.   described in detail later. All source code editing is made in other
  35.   buffers. You can jump between the info buffer and the source code
  36.   buffers with the escape key.
  37.  
  38.   Info Buffer Functions
  39.   ~~~~~~~~~~~~~~~~~~~~~
  40.   z        Clear info buffer (also with empty input).
  41.  
  42.   ?[expr]    Evaluate expression. Expr must be in C syntax, but you can
  43.         use $ instead of the 0x notation. You may also use label
  44.         names, which will be replaced with the label's value from
  45.         the last assembly. Label search is made *case sensitive*!
  46.  
  47.   =<opt>    Dump list. Options may be one of:
  48.         l    Assembly list generated in last assembly if
  49.             "Make lists" is enabled.
  50.  
  51.         r<r.e.>    Find variables matching the regular expression.
  52.             If you only use alphanumerical letters, the
  53.             operation is equal to that found in ASM1.
  54.             However, you may also write something like:
  55.             "=r.*foo" which would find both "foo" and
  56.             "barfoo".
  57.  
  58.         R<r.e.> Same as 'r', but case insensitive.
  59.  
  60.   a<opt>    Assemble parent buffer. Options may be one of:
  61.         o    Assemble linkable object.
  62.         a=args    Assemble with the given args.
  63.         s    Syntax check (no output generated).
  64.         <none>    Plain assemble.
  65.  
  66.   d<args>    Start debugger with the given args.
  67.  
  68.   j        Run last assembled file.
  69.  
  70.   l        Load list generated in last assembly.
  71.  
  72.   m<args>    Call 'make' with the given args.
  73.         This setup is made for GNU make. The make command must be
  74.         placed in the dir "/bin".
  75.  
  76.   ESC        Jump to parent buffer.
  77.         If the previos command was an erroneous assembly, the
  78.         cursor will be placed at the line of the first error.
  79.  
  80.  
  81.   Source Buffer Functions
  82.   ~~~~~~~~~~~~~~~~~~~~~~~
  83.   These key bindings are configurable. Default bindings are shown.
  84.  
  85.   CTRL "    Display error description again.
  86.         I can't seem to get the ReturnStatus() function to work
  87.         when the buffer has just changed to another window, so
  88.         you will have to use this function to see the description
  89.         of the first error.
  90.  
  91.   CTRL '    Jump to next error.
  92.         If the next error is in another buffer/file, the current
  93.         buffer can be saved (see "next error save").
  94.         If the next error is in a file not loaded, you will be
  95.         asked if the file should be loaded.
  96.  
  97.   ESC        Jump to the info buffer window.
  98.  
  99.  
  100.   Preferences
  101.   ~~~~~~~~~~~
  102.   The line below an entry contains the default setting.
  103.  
  104.   Assembler:    Name of the assembler.
  105.   ("proasm")
  106.  
  107.   Asm Options:    Options that will always be passed to the assembler.
  108.   ("")
  109.  
  110.   Debugger:    Path and name of the debugger.
  111.   ("")
  112.  
  113.   Dbg Options:    Options that will always be passed to the debugger.
  114.   ("")
  115.  
  116.   Info height:    Height of the info buffer window. I use a full height
  117.   (200)        window which pops to front when needed. If you want, you
  118.         could have the info buffer window below the editing window.
  119.  
  120.   Next error save:
  121.   (Yes)        When you use the key to get to next error and this happens
  122.         to be in another buffer, should this buffer be saved
  123.         first? I like this feature, as it makes it possible to
  124.         run through all the errors and fix them, without thinking
  125.         of which files they are in. Thus, when the last bug is
  126.         fixed, I can assemble again immediately, without checking
  127.         for unsaved buffers.
  128.  
  129.   Key: Next Error:
  130.   (CTRL ')    Get to next error. If not in another buffer you will be
  131.         asked if the file containing the bug should be loaded.
  132.  
  133.   Key: This Error:
  134.   (CTRL ")    Display error description again (jump to error).
  135.  
  136.   External grep:
  137.   (no)        The interface uses a 'grep' command when you want to see a
  138.         list of variables. Using an external 'grep' command may
  139.         speed up the operation. (uses "/bin/grep").
  140.  
  141.   Use ASX server:
  142.   (no)        Pass commands through the ASX server? This will speed up
  143.         assembly as the server can cache include files.
  144.  
  145.   Make lists:    You can get a list of the assemblers interpretation of
  146.   (no)        your sources (i.e. expansion of macros and the like), but
  147.         due to the increased assembly time, you should only enable
  148.         this feature if you really need it.
  149.  
  150.  
  151.  
  152.   General
  153.   ~~~~~~~
  154.   When an assembly is started, normally the parent buffer will be
  155.   assembled. However, if the first line of the buffer is ';$"name"' the
  156.   file named "name" will be assembled.
  157.  
  158.   When an assembly is started, the parent buffer will be saved.
  159.  
  160.  
  161. HISTORY (REV)
  162.   01.08.96 (2)    Now clears 'changed' flag in info buffer at prompt.
  163.         Added saveNextError.
  164.         NextError now only works after a erroneous assembly.
  165.         Added some more menus.
  166.         Documentation.
  167.  
  168.   12.07.96 (1)    Added many many features.
  169.  
  170.            (0)    Beta for Daniel Weber's eyes only :)
  171.  
  172. BUGS
  173.   I'm sure :)
  174.  
  175. TODO
  176.   Better control of a debugger
  177.   ASX (ASX hangs on my machine so I haven't given the ASX interface much
  178.        time).
  179.   Assembling directly from memory to boost speed.
  180.  
  181. SEE ALSO
  182.   ETags.FPL.README
  183.   CompleteWord.FPL.README
  184.   GotoLabel.FPL.README
  185.